Dispersive Flies Optimisation
   HOME

TheInfoList



OR:

Dispersive flies optimisation (DFO) is a bare-bones
swarm intelligence Swarm intelligence (SI) is the collective behavior of decentralized, self-organized systems, natural or artificial. The concept is employed in work on artificial intelligence. The expression was introduced by Gerardo Beni and Jing Wang in 1989, in ...
algorithm which is inspired by the swarming behaviour of flies hovering over food sources. DFO is a simple optimiser which works by iteratively trying to improve a
candidate solution In mathematical optimization, a feasible region, feasible set, search space, or solution space is the set of all possible points (sets of values of the choice variables) of an optimization problem that satisfy the problem's constraints, potent ...
with regard to a numerical measure that is calculated by a
fitness function {{no footnotes, date=May 2015 A fitness function is a particular type of objective function that is used to summarise, as a single figure of merit, how close a given design solution is to achieving the set aims. Fitness functions are used in genetic ...
. Each member of the population, a fly or an agent, holds a candidate solution whose suitability can be evaluated by their fitness value. Optimisation problems are often formulated as either minimisation or maximisation problems. DFO was introduced with the intention of analysing a simplified swarm intelligence algorithm with the fewest tunable parameters and components. In the first work on DFO, this algorithm was compared against a few other existing swarm intelligence techniques using
error An error (from the Latin ''error'', meaning "wandering") is an action which is inaccurate or incorrect. In some usages, an error is synonymous with a mistake. The etymology derives from the Latin term 'errare', meaning 'to stray'. In statistics ...
, efficiency and diversity measures. It is shown that despite the simplicity of the algorithm, which only uses agents’ position vectors at time ''t'' to generate the position vectors for time ''t'' + 1, it exhibits a competitive performance. Since its inception, DFO has been used in a variety of applications including medical imaging and image analysis as well as data mining and machine learning.


Algorithm

DFO bears many similarities with other existing continuous, population-based optimisers (e.g. particle swarm optimization and
differential evolution In evolutionary computation, differential evolution (DE) is a method that optimizes a problem by iteratively trying to improve a candidate solution with regard to a given measure of quality. Such methods are commonly known as metaheuristics as ...
). In that, the swarming behaviour of the individuals consists of two tightly connected mechanisms, one is the formation of the swarm and the other is its breaking or weakening. DFO works by facilitating the information exchange between the members of the population (the swarming flies). Each fly \mathbf represents a position in a ''d''-dimensional search space: \mathbf = (x_1,x_2,\ldots,x_d), and the fitness of each fly is calculated by the fitness function f(\mathbf), which takes into account the flies' ''d'' dimensions: f(\mathbf) = f(x_1,x_2,\ldots,x_d) . The
pseudocode In computer science, pseudocode is a plain language description of the steps in an algorithm or another system. Pseudocode often uses structural conventions of a normal programming language, but is intended for human reading rather than machine re ...
below represents one iteration of the algorithm: for i = 1 : N flies \mathbf.\text = f(\mathbf_i) end for i \mathbf_s = arg min (\mathbf_i) \; i \in \ for i = 1 : N and i \ne s for d = 1 : D dimensions x_^ = U(x_, x_) else x_^ = x_^t + U(0,1)( x_^t - x_^t ) end if end for d end for i In the algorithm above, x_^ represents fly i at dimension d and time t+1 ; x_^t presents x_i 's best neighbouring fly in
ring topology A ring network is a network topology in which each node connects to exactly two other nodes, forming a single continuous pathway for signals through each node – a ring. Data travels from node to node, with each node along the way handling ever ...
(left or right, using flies indexes), at dimension d and time t ; and x_^t is the swarm's best fly. Using this update equation, the swarm's population update depends on each fly's best neighbour (which is used as the focus \mu , and the difference between the current fly and the best in swarm represents the spread of movement, \sigma ). Other than the population size N , the only tunable parameter is the disturbance threshold \Delta , which controls the dimension-wise restart in each fly vector. This mechanism is proposed to control the diversity of the swarm. Other notable minimalist swarm algorithm is Bare bones particle swarms (BB-PSO), which is based on particle swarm optimisation, along with bare bones differential evolution (BBDE) which is a hybrid of the bare bones particle swarm optimiser and differential evolution, aiming to reduce the number of parameters. Alhakbani in her PhD thesis covers many aspects of the algorithms including several DFO applications in feature selection as well as parameter tuning.


Applications

Some of the recent applications of DFO are listed below: * Optimising
support vector machine In machine learning, support vector machines (SVMs, also support vector networks) are supervised learning models with associated learning algorithms that analyze data for classification and regression analysis. Developed at AT&T Bell Laboratorie ...
kernel to classify imbalanced data * Quantifying symmetrical complexity in
computational aesthetics Aesthetics, or esthetics, is a branch of philosophy that deals with the nature of beauty and taste, as well as the philosophy of art (its own area of philosophy that comes out of aesthetics). It examines aesthetic values, often expressed thr ...
* Analysing computational
autopoiesis The term autopoiesis () refers to a system capable of producing and maintaining itself by creating its own parts. The term was introduced in the 1972 publication '' Autopoiesis and Cognition: The Realization of the Living'' by Chilean biologist ...
and
computational creativity Computational creativity (also known as artificial creativity, mechanical creativity, creative computing or creative computation) is a multidisciplinary endeavour that is located at the intersection of the fields of artificial intelligence, cogn ...
* Identifying
calcification Calcification is the accumulation of calcium salts in a body tissue. It normally occurs in the formation of bone, but calcium can be deposited abnormally in soft tissue,Miller, J. D. Cardiovascular calcification: Orbicular origins. ''Nature Mat ...
s in medical images * Building non-identical organic structures for game's space development * Deep
Neuroevolution Neuroevolution, or neuro-evolution, is a form of artificial intelligence that uses evolutionary algorithms to generate artificial neural networks (ANN), parameters, and rules. It is most commonly applied in artificial life, general game playing ...
: Training Deep
Neural Networks A neural network is a network or circuit of biological neurons, or, in a modern sense, an artificial neural network, composed of artificial neurons or nodes. Thus, a neural network is either a biological neural network, made up of biological ...
for False Alarm Detection in Intensive Care Units * Identification of
animation Animation is a method by which image, still figures are manipulated to appear as Motion picture, moving images. In traditional animation, images are drawn or painted by hand on transparent cel, celluloid sheets to be photographed and exhibited ...
key points from 2D-medialness maps


References

{{Reflist Articles with example pseudocode Nature-inspired metaheuristics Mathematical optimization Evolutionary algorithms